<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // 箭头函数是用来简化函数定义语法的
        // const fn = () => {
        //     console.log('123');
        // };
        // fn();

        // 在箭头函数中，如果函数体中只有一句代码
        // 并且代码的执行结果就是函数的返回值 函数体大括号可以省略
        // const fn = (n1, n2) => n1 + n2;
        // const sum = fn(11, 12);
        // console.log(sum);

        // 在箭头函数中 如果形参只有一个 形参外侧的小括号也是可以省略的
        // const fn = v => alert(v);
        // fn(20);

        // 箭头函数不绑定this 箭头函数没有自己的this关键字
        // 如果在箭头函数中使用this
        // this关键字将指向箭头函数定义位置中的this

        function fn() {
            console.log(this);
            return () => {
                console.log(this);
            }
        }
        const obj = { name: 'zhangsan' };
        const resFn = fn.call(obj);
        resFn();
    </script>
</body>

</html>